import {defineConfig, loadEnv} from 'vite'
import vue from '@vitejs/plugin-vue'
import path from 'path'

export default defineConfig(({mode}) => {
    // 加载对应环境的变量
    const env = loadEnv(mode, process.cwd())
    const path_ = '/' + env.VITE_API_URL
    return {
        plugins: [vue()],
        // 配置路径别名
        resolve: {
            alias: {
                '@': path.resolve(__dirname, 'src')
            }
        },
        // 为所有环境配置代理
        server: {
            proxy: {
                // 使用环境变量中的API前缀作为代理键
                [env.VITE_API_URL]: {
                    target: env.VITE_PROXY_TARGET,
                    changeOrigin: true,
                    // 动态重写路径，移除路径前缀
                    //rewrite: (path) => path.replace(new RegExp(`^${env.VITE_API_URL}`), '')
                    // 动态重写路径，不移除路径前缀
                    rewrite: (path) => path
                }
            }
        }
    }
})